package com.bcu.cn.onlineexamsystem.exammanage.service;

import com.bcu.cn.onlineexamsystem.exammanage.entity.Exam;
import com.bcu.cn.onlineexamsystem.exammanage.entity.ExamForm;

import java.util.List;
import java.util.Map;

public interface ExamService {
    List<Exam> getExamsByTeacherId(String teacherId);
    
    /**
     * 创建考试
     * @param examForm 考试表单数据
     * @param teacherId 教师ID
     * @return 创建的考试ID
     */
    Integer createExam(ExamForm examForm, String teacherId);

    /**
     * 删除考试
     * @param examId 考试ID
     * @return 是否删除成功
     */
    boolean deleteExam(String examId);

    /**
     * 发布考试
     * @param examId 考试ID
     * @return 是否发布成功
     */
    boolean publishExam(String examId);

    /**
     * 获取考试详情
     * @param examId 考试ID
     * @return 考试详情信息
     */
    Map<String, Object> getExamDetail(String examId);

    /**
     * 自动将已过期的进行中考试状态改为已结束
     */
    void autoEndExpiredExams();

    /**
     * 获取考试题目答题统计
     */
    Map<String, Object> getExamQuestionStat(String examId);
} 